package com.promotores;

import java.util.List;

import com.promotores.R;
import com.promotores.util.Parametros;

import android.app.Activity;
import android.content.Intent;
import android.os.Bundle;
import android.widget.EditText;
import android.widget.ImageButton;
import android.widget.ListView;
import android.widget.Toast;
import android.view.View;
import android.view.View.OnClickListener;
import android.widget.AdapterView.OnItemClickListener;
import android.widget.AdapterView;

public class ActivityListarTipoEventos extends Activity implements OnItemClickListener, OnClickListener{
	ListView lista;
	List<BeanTipoEvento> listaTipoEventos;
	BeanTipoEvento tipoEvento;
	ImageButton buscar;
	String flag;
	EditText edtBuscarEvento;
	/**
	 * @see android.app.Activity#onCreate(Bundle)
	 */
	@Override
	protected void onCreate(Bundle savedInstanceState) {
		super.onCreate(savedInstanceState);
		flag = getIntent().getStringExtra("flag");
		//Toast.makeText(this, flag, Toast.LENGTH_LONG).show();
		setContentView(R.layout.pr_lista_tipo_eventos);

		lista = (ListView) findViewById(R.id.lvTipoEventos);
		edtBuscarEvento = (EditText) findViewById(R.id.btnBuscarEvento);
		//se hace la conexión con la base de datos local
		GestorTipoEvento dbTipoEvento = new GestorTipoEvento(this);
		//simulación de data
		//se obtiene la lista de tipos de eventos
		listaTipoEventos = dbTipoEvento.getAllTipoEvento();
		
		AdapterTipoEvento adapter = new AdapterTipoEvento(listaTipoEventos, this);
		
		lista.setAdapter(adapter);
		lista.setOnItemClickListener(this);
		
		buscar = (ImageButton)findViewById(R.id.buscarEvento);        
        buscar.setOnClickListener(this);
        
        ImageButton offline = (ImageButton)findViewById(R.id.imgOfflineMode);
        offline.setOnClickListener(this);
        if (Parametros.isOffline_mode()){
        	offline.setVisibility(View.VISIBLE);
        }
	}
	@Override
	public void onClick(View v) {
		if (v.getId() == R.id.buscarEvento){
			String auxEvento = edtBuscarEvento.getText().toString();
			if (auxEvento.compareTo("")!=0){
				Intent intent = new Intent();			
				intent.putExtra("flag",flag);
				intent.putExtra("tipoEvento", "");
				intent.putExtra("buscaEvento", auxEvento);
				intent.setClass(this, ActivityListarEventos.class);
				startActivity(intent);
			}
		}
	}
	@Override
	public void onItemClick(AdapterView<?> adapter, View arg1, int position, long arg3) {
		BeanTipoEvento tipoEvento = (BeanTipoEvento)adapter.getItemAtPosition(position);
		//acá ya se obtiene todo el objeto tipo evento. faltaría agregar la funcionalidad
		Intent intent = new Intent();
		intent.putExtra("flag",flag);
		intent.putExtra("tipoEvento", String.valueOf(tipoEvento.getId()));
		//intent.setClass(this, ActivityListarSubTipoEventos.class);
		intent.setClass(this, ActivityListarEventos.class);
		startActivity(intent);
	}
	
	@Override
	public void onResume(){
		super.onResume();
		if (Parametros.isOffline_mode()){
			ImageButton offline = (ImageButton)findViewById(R.id.imgOfflineMode);
			offline.setVisibility(View.VISIBLE);
			offline.invalidate();
        }
	}
}
